A generalized Chan-Paton construction is presented which is analogous to the tensor product of vector bundles. To this end open string theories are considered where the space of states decomposes into sectors whose product is described by a semigroup. The cyclicity properties of the open string theory are used to prove that the relevant semigroups are direct unions of Brandt semigroups. The known classification of Brandt semigroups then implies that all such theories have the structure of a theory with Dirichlet-branes. We also describe the structure of an arbitrary orientifold group, and show that the truncation to the invariant subspace defines a consistent open string theory. Finally, we analyze the possible orientifold projections of a theory with several kinds of branes.